home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
9-Digit Zip Code Directory
/
9-Digit Zip Code Directory (American Business Information) (ABIZIP-12).ISO
/
z4src.zip
/
BSPORT.H
< prev
next >
Wrap
C/C++ Source or Header
|
1993-08-11
|
4KB
|
162 lines
//----------------------------------------------------------------------------
// MODULE DESCRIPTION
//
// Module: bs_port.h
// Title: Base library
// Notice: John M. Weeder
// Copyright (c) 1993. All rights reserved.
// This module contains proprietary information and should be
// treated as confidential.
//
//----------------------------------------------------------------------------
// MAINTENANCE HISTORY
//
// $Workfile$
// $Revision$
// $Author$
// $Date$
// $Log$
//
//----------------------------------------------------------------------------
// MODULE NARRATIVE
//
// This files contains macros to handle portability issues. The following
// macros are appropriately declared for the compiler and operating system:
// _PASCAL_ Pascal calling and naming
// _CDECL_ C calling and naming
// _FASTCALL_ FastCall calling and naming
// _LOADDS_ Load DS register on entry. Used by OS/2 1.3 and Windows
// DLLs.
// _EXPORT_ Export a function (DLL only)
// _HUGE_ 'huge' variable or function or class.
// _FAR_ 'far' variable or function.
// _FAR16_ 'far16' variable or function. Used by OS/2 2.X for
// compatibility with 16 bit apps.
// _STDCALL_ OS/2 2.X standard call type
// _NEAR_ 'near' variable or function.
// _INTERRUPT_ Interrupt handler.
//
// The code in this module should be written entirely in C.
// Do not use any C++ constructs.
//
// This module is portable to:
// DOS 3.X+
// MS Windows 3.X+
// OS/2 2.X+
// OS/2 2.0 PM
// SCO UNIX.
//
// The following compilers are supported:
// MSC 6.0A
// MSC/C++ 7.0
// Borland C++ 3.1 for DOS
// Borland C++ 1.0 for OS/2 2.X
// SCO UNIX cc
//
//----------------------------------------------------------------------------
//----------------------------------------------------------------------------
// Type Modifiers
//----------------------------------------------------------------------------
#if COMPILER_MSC+COMPILER_BORLAND // DOS compiler
# ifndef _PASCAL_
# define _PASCAL_ _pascal
# endif
# ifndef _CDECL_
# define _CDECL_ _cdecl
# endif
# ifndef _FASTCALL_
# define _FASTCALL_ _fastcall
# endif
# ifndef _EXPORT_
# if COMPILE_DLL
# define _EXPORT_ _export
# else
# define _EXPORT_
# endif
# endif
# if OS_OS2 || OS_PM // OS/2 2.X
# ifndef _FAR16_
# define _FAR16_ _far16
# endif
# ifndef _STDCALL_
# define _STDCALL_ _stdcall
# endif
# ifndef _FAR_
# define _FAR_
# endif
# ifndef _HUGE_
# define _HUGE_
# endif
# ifndef _NEAR_
# define _NEAR_
# endif
# ifndef _LOADDS_
# define _LOADDS_
# endif
# ifndef _INTERRUPT_
# define _INTERRUPT_
# endif
# else
# ifndef _FAR16_
# define _FAR16_
# endif
# ifndef _STDCALL_
# define _STDCALL_
# endif
# ifndef _FAR_
# define _FAR_ _far
# endif
# ifndef _HUGE_
# define _HUGE_ _huge
# endif
# ifndef _NEAR_
# define _NEAR_ _near
# endif
# ifndef _LOADDS_
# define _LOADDS_ _loadds
# endif
# ifndef _INTERRUPT_
# define _INTERRUPT_ _interrupt
# endif
# endif
#else // All other compilers
# ifndef _PASCAL_
# define _PASCAL_
# endif
# ifndef _CDECL_
# define _CDECL_
# endif
# ifndef _FASTCALL_
# define _FASTCALL_
# endif
# ifndef _LOADDS_
# define _LOADDS_
# endif
# ifndef _EXPORT_
# define _EXPORT_
# endif
# ifndef _FAR_
# define _FAR_
# endif
# ifndef _HUGE_
# define _HUGE_
# endif
# ifndef _FAR16_
# define _FAR16_
# endif
# ifndef _STDCALL_
# define _STDCALL_
# endif
# ifndef _NEAR_
# define _NEAR_
# endif
# ifndef _INTERRUPT_
# define _INTERRUPT_
# endif
#endif
//----------------------------------------------------------------------------
//------------------------------- End of File --------------------------------
//----------------------------------------------------------------------------